Начиная с версии 2.0, OpenXava использовал каркас Hibernate для доступа к базам данных.
Настройка вашего приложения для использования Hibernate
С версии v3.0 для сохранения состояния объектов OpenXava, по-умолчанию, использует JPA. Если вы хотите использовать Hibernate, вам нужно указать это в файле properties/xava.properties:
Теперь ваше приложение будет использовать Hibernate для сохранения состояния объектов.
Использование Hibernate API в приложениях OpenXava
Вы можете использовать Hibernate API в любой части вашего приложения OpenXava, например, в калькуляторах (calculators), валидаторах (validators), действиях (actions), фильтрах (filters) и т.д.
Для облегчения использования Hibernate OpenXava предоставляет класс XHibernate . Например, если вы хотите сохранить объект в базе данных, используя Hibernate API, обычная реализация будет:
Вуа-ля.
Первый раз, когда вы вызываете XHibernate.getSession(), сессия сохраняется и ассоциируется с текущим потоком, кроме того, создается транзакция. При следующем обращении к методу, будет возвращена та же сессия Hibernate. В конце цикла выполнения действия (action) OpenXava автоматически выполнит commit транзакции и закроет сессию. Кроме того, XHibernate.getSession() корректно работает внутри и вне среды CMT.
Вы можете также выполнить commit вызовом XHibernate.commit() в любой момент, когда вам это нужно. После вызова XHibernate.getSession() новая сессия и новая транзакция будут созданы.
Более подробную информацию вы найдете документации по API ( класс org.openxava.hibernate.XHibernate).
Использование Hibernate
Начиная с версии 2.0, OpenXava использовал каркас Hibernate для доступа к базам данных.Настройка вашего приложения для использования Hibernate
С версии v3.0 для сохранения состояния объектов OpenXava, по-умолчанию, использует JPA. Если вы хотите использовать Hibernate, вам нужно указать это в файле properties/xava.properties:Теперь ваше приложение будет использовать Hibernate для сохранения состояния объектов.
Использование Hibernate API в приложениях OpenXava
Вы можете использовать Hibernate API в любой части вашего приложения OpenXava, например, в калькуляторах (calculators), валидаторах (validators), действиях (actions), фильтрах (filters) и т.д.Для облегчения использования Hibernate OpenXava предоставляет класс XHibernate . Например, если вы хотите сохранить объект в базе данных, используя Hibernate API, обычная реализация будет:
Внутри OpenXava вы имеете использовать более элегантный вариант, реализованный с помощью класса XHibernate:
Вуа-ля.
Первый раз, когда вы вызываете XHibernate.getSession(), сессия сохраняется и ассоциируется с текущим потоком, кроме того, создается транзакция. При следующем обращении к методу, будет возвращена та же сессия Hibernate. В конце цикла выполнения действия (action) OpenXava автоматически выполнит commit транзакции и закроет сессию. Кроме того, XHibernate.getSession() корректно работает внутри и вне среды CMT.
Вы можете также выполнить commit вызовом XHibernate.commit() в любой момент, когда вам это нужно. После вызова XHibernate.getSession() новая сессия и новая транзакция будут созданы.
Более подробную информацию вы найдете документации по API ( класс org.openxava.hibernate.XHibernate).